home *** CD-ROM | disk | FTP | other *** search
/ Ham Radio 2000 / Ham Radio 2000.iso / ham2000 / tcp_ip / rose_nos / rose.doc < prev    next >
Text File  |  1992-02-26  |  4KB  |  116 lines

  1. K5JB IP over ROSE interface
  2.  
  3. This change to NOS has a work-around that permits ROSE circuits to be
  4. used to carry IP frames.  Normally, the ROSE system takes a cavalier
  5. approach and casually blasts the protocol identifier (PID) into AX.25
  6. information frames.  Normally net communicates with other net stations
  7. using un-numbered information frames (UI) but can be made to run in a
  8. virtual circuit mode (VC, or connected) if necessary.  Unfortunately, 
  9. the RATs ROSE switch prevents this from working and it is easier to 
  10. change net than convince the ROSE authors to faithfully transport what 
  11. it gets, after all IP is an INTERNET PROTOCOL, eh?
  12.  
  13. You use the rose add command to create a table of distant IP stations
  14. and associated ROSE switches that will be used.  This table is used to
  15. catch incoming circuits from those stations and put the IP PID back as
  16. cavalier as the ROSE switch punched it out.  Syntax for this command is:
  17.  
  18.     rose add <IP station's call> <ROSE switch's call>
  19.  
  20. The distant IP station's call is the AX.25 call, not the host name. Your
  21. neighbor ROSE switch's call is its AX.25 call. An example of this command
  22. is:
  23.  
  24.     rose add kb0qj-10 k5jb-5
  25.  
  26. If you want to drop a call from the table, the command is:
  27.  
  28.     rose drop <IP station's call>
  29.  
  30. Because we normally will be able to only create a single return circuit, 
  31. you should only have one rose table entry for an IP station.  This is 
  32. not a serious limitation because you and the other IP station have to 
  33. coordinate both ends anyway and set your routes to match.
  34.  
  35. This takes care of incoming packets.  Now to route outgoing packets, you 
  36. use two standard commands: ax25 route add, and ax25 route mode:
  37.  
  38.    ax25 route add kb0qj-10 405732
  39.    ax25 route mode kb0qj-10 vc
  40.  
  41. You can have a maximum of 10 IP station/ROSE call pairs in the rose
  42. table.
  43.  
  44. Sorry about the kludge, but I had to do something!  Revenge is sweet!
  45. Look at the users list on your neighbor switch after you establish a
  46. session.  Holy Cow!  It says it doesn't know what the CC PID is, heh!
  47.  
  48. Enjoy!
  49.  
  50. Joe, K5JB
  51.  
  52.  
  53. NOS Compile notes by N5OWK (Joe uses NET):
  54.  
  55. How to implement IP over ROSE:
  56.  
  57. In config.h:
  58.  
  59. Add a rose define:
  60.  
  61. ...
  62. #define ESCAPE        1    /* Allow Unix style escape on PC */
  63. #define    ROSE        1    /* Include K5JB IP over ROSE */
  64. #undef    RSPF        1    /* Include Radio Shortest Path First Protocol */
  65. #define    AXIP        1    /* digipeater via ip port 93 interface */
  66. ...
  67.  
  68. In config.c:
  69.  
  70. Add a rose command to Cmds array structure:
  71.  
  72. ...
  73.     "rmdir",    dormd,        0, 2, "rmdir <directory>",
  74.     "route",    doroute,    0, 0, NULLCHAR,
  75. #ifdef ROSE
  76.     "rose",        dorose,        0, 0, "rose [add|drop]",
  77. #endif
  78. #ifdef    RSPF
  79.     "rspf",        dorspf,        0, 0, NULLCHAR,
  80. #endif    /* RSPF */
  81. ...
  82.  
  83. I put "rose" after "route" because I like to use "ro add" for route add.
  84.  
  85. See the file lapb.c.  It has the required changes with the ROSE defines
  86. around the affected code.
  87.  
  88. Recompile.
  89.  
  90. In your autoexec.nos add the required "rose add ipnode rosenode" entries.
  91. Add also the ax25 path using the "ax25 route add ipnode rosenode rosetelco"
  92. command.  Follow that with the "ax25 route mode ipnode vc" command.
  93.  
  94. What you have created is an ax25 Virtual Connection route to the IP station
  95. over the specified ROSE switch.  The "rose add" command tells NOS that you
  96. are going to modify the PID of this circuit path, because ROSE doesn't
  97. transport PID's.
  98.  
  99. For example, station n5owk wants to talk to station k5jb over ROSE.  We get
  100. together and decide the best route.  I choose k5jb-5, 405732 as my neighbor
  101. ROSE, he chooses N0ELS-5, 405771.  So my autoexec.nos entries will be:
  102.  
  103. ax25 route add k5jb-10 k5jb-5 405732
  104. ax25 route mode k5jb-10 vc
  105. rose add k5jb-10 k5jb-5
  106.  
  107. Station k5jb will then use:
  108.  
  109. ax25 route add n5owk-1 n0els-5 405771
  110. ax25 route mode n5owk-1 vc
  111. rose add n5owk-1 n0els-5
  112.  
  113. Now do a ping and see how she works.
  114.  
  115. Good luck, please echo any fixes, additions, and better ideas.
  116.